/**
 * 日期相关方法
 */

/**
 * 检查日期是否合法
 * 转换成number  判断是否number即可
 * @param  {...any} value
 * @returns
 */
export function isDateVaild(...value) {
  return !Number.isNaN(new Date(value).valueOf());
}

/**
 * 查询某日期位于一年中的第几天
 * @param {*} day
 * @return {number}
 */
export function dayOfYear(time) {
  return Math.floor(
    (time - new Date(time.getFullYear(), 0, 0)) / 1000 / 60 / 60 / 24
  );
}

/**
 * 计算两个日期之间相差多少天
 * @param {Date} date1
 * @param {Date} date2
 * @returns
 */
export function dayBetween(date1, date2) {
  return Math.ceil(Math.abs(date1.getTime() - date2.getTime()) / 8640000);
}

/**
 * 获取该日期的时间部分
 * @param {Date} date 
 * @returns 
 */
export function timeFromDate(date) {
  return date.toTimeString().slice(0, 8);
}
